<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // promise API

        // 1. 定义三个promise对象 - （执行异步操作）
        let p1 = new Promise((resolve,reject)=>{
            // resolve('ok');
            reject('error');
        });
        let p2= Promise.resolve('SUCCESS');
        
        let p3 = new Promise((resolve,reject)=>{
            setTimeout(() => {
                resolve('成功');
            }, 500);
        });
        // 2. 调用Promise.race([])方法，传入三个promise对象
        // race 比速度！
        // 备注：如果都是同步修改状态，调用顺序以数组顺序为准！
        // 备注：如果promise中有异步修改状态，谁快谁说了算！
        let p4 = Promise.race([p2,p1,p3]);

        console.log(p4);

        // 3. 打印raceP （哪个promise最先执行，以哪个promise状态和结果值为准）
    </script>
</body>

</html>